package com.quant.mapper;

import com.quant.entity.StockDaily;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDate;
import java.util.List;

/**
 * @author lulj
 */
@Mapper
public interface StockDailyMapper {
    /** 创建表结构 */
    void createTableIfNotExists();

    /** 批量插入日线数据 */
    int batchInsert(@Param("list") List<StockDaily> stockDailyList);

    /** 根据股票代码和日期范围查询日线数据 */
    List<StockDaily> selectByCodeAndDateRange(
            @Param("tsCode") String tsCode,
            @Param("startDate") LocalDate startDate,
            @Param("endDate") LocalDate endDate);

    /** 查询股票最后一条记录的日期 */
    LocalDate selectLastTradeDate(@Param("tsCode") String tsCode);
}
